com.supermap.realspace
类 Layer3DOSGBFile
- java.lang.Object
 - 
- com.supermap.realspace.Layer3D
 - 
- com.supermap.realspace.Layer3DOSGBFile
 
 
 
- 
public class Layer3DOSGBFile extends Layer3D
三维切片缓存(OSGB)图层类,继承自 Layer3D类。OSGB缓存为一种数据存储格式,它具有数据可见范围更大、加载效率高、层级切换平滑及占用内存和CPU更低的优势。倾斜摄影模型、BIM、管线、精模数据、矢量缓存数据均可以采用此种格式存储。
 
- 
- 
字段概要
字段 限定符和类型 字段和说明 doublemaxDataValue获取图层的最大高度.doubleminDataValue获取图层的最小高度. 
- 
方法概要
所有方法 实例方法 具体方法 限定符和类型 方法和说明 intaddFlattenRegion(Geometry geometry, java.lang.String tag)添加压平区域来压平当前的osgb模型。voidclearFlattenRegion()清除所有压平区域对象,恢复OSGB模型的初始状态。voidclearObjectsColor()清除所有对象的颜色。java.lang.Object[]getAllFieldValueOfLastSelectedObject()获取最后一次选择的所有属性字段信息。java.util.ArrayList<java.lang.String>getDatasetInfos(java.util.ArrayList<java.lang.Integer> startid, java.util.ArrayList<java.lang.Integer> endid)获取多数据源属性信息接口FieldInfosgetFieldInfos()返回属性表信息。java.lang.ObjectgetFieldValueOfSelectedObject(int index)返回选中对象的属性数据表中指定ID字段的值。GeometrygetFlattenRegion(int index)返回指定索引的压平区域对象。intgetFlattenRegionCount()返回当前场景的压平区域对象个数。java.lang.StringgetFlattenRegionTag(int index)返回指定索引的压平区域对象的标签。HypsometricSettinggetHypsometricSetting()获取图层分层设色对象。doublegetLODRangeScale()返回LOD层级切换的距离缩放系数。voidgetObjectsColor(int[] ids, Color[] colors)获取指定OSGB模型ID队列的颜色。intgetObjectsColorCount()返回设置颜色的对象个数。GeoStyle3DgetStyle()返回OSGB缓存图层的风格。intindexOfFlattenRegion(java.lang.String tag)通过标签获取压平区域的索引号。voidremoveAllObjsOffset()清除所有的对象偏移booleanremoveFlattenRegion(int index)移除指定索引的压平区域。voidremoveObjectsColor(int[] ids)移除指定ID队列模型的颜色。voidsetARModelRotation(double rotX, double rotY, double rotZ)AR图层设置旋转voidsetARModelScale(double valuex, double valuey, double valuez)AR图层设置放缩voidsetDistanceVisible(double distance)AR设置可见距离booleansetFlattenRegionTag(int index, java.lang.String tag)设置指定索引的压平区域对象的标签。voidsetHypsometricSetting(HypsometricSetting HypsometricSetting)设置图层分层设色对象。voidsetInitialized(boolean status)设置图层是否初始化 设置FALSE时会重新初始化图层voidsetLODRangeScale(double value)设置LOD层级切换距离缩放系数。voidsetObjectsColor(int[] ids, Color value)设置指定OSGB模型ID队列的模型颜色。voidsetObjectsVisible(int[] ids, boolean value)设置指定OSGB模型ID队列的模型是否可见,并与模型成互斥可见关系。voidsetOnlyObjectsVisible(int[] ids, boolean value)设置指定OSGB模型ID队列的模型是否可见(手动设置)。voidsetSelectedTranslate(double translateX, double translateY, double translateZ)设置选中对象的偏移位置voidsetStyle(GeoStyle3D geoStyle3D)设置OSGB缓存图层的风格。voidsetTranslation(double rotX, double rotY, double rotZ)AR图层设置平移- 
从类继承的方法 com.supermap.realspace.Layer3D
clearCustomClipPlane, clipByBox, getBounds, getCaption, getDataName, getFeatures, getName, getSelection, getSwipeRegion, getType, getVisibleInViewport, isReleaseWhenInvisible, isSelectable, isSwipeEnable, isVisible, setClipLineColor, setCustomClipCross, setCustomClipPlane, setMaxObjectVisibleDistance, setReleaseWhenInvisible, setSelectable, setSwipeEnable, setSwipeRegion, setVisible, setVisibleInViewport 
 - 
 
 - 
 
- 
- 
字段详细资料
- 
maxDataValue
public double maxDataValue
获取图层的最大高度. 
- 
minDataValue
public double minDataValue
获取图层的最小高度. 
 - 
 
- 
方法详细资料
- 
getLODRangeScale
public double getLODRangeScale()
返回LOD层级切换的距离缩放系数。OSGB缓存通过设置LOD切换距离来控制在一定距离范围显示LOD层级的某一层。假设LOD切换距离为200米,离相机200米以内的模型将显示LOD第0级(最精细层);200-400米的模型显示第1级(次精细层),以此类推。
OSGB缓存生成后不能直接改变LOD切换距离值,但可通过更改LOD层级切换距离缩放系数来改变LOD切换距离,即:
新的LOD切换距离=原始LOD切换距离 * LOD切换距离缩放系数
- 返回:
 - LOD层级切换的距离缩放系数。
 
 
- 
setLODRangeScale
public void setLODRangeScale(double value)
设置LOD层级切换距离缩放系数。OSGB缓存通过设置LOD切换距离来控制在一定距离范围显示LOD层级的某一层。假设LOD切换距离为200米,离相机200米以内的模型将显示LOD第0级(最精细层);200-400米的模型显示第1级(次精细层),以此类推。
OSGB缓存生成后不能直接改变LOD切换距离值,但可通过更改LOD层级切换距离缩放系数来改变LOD切换距离,即:
新的LOD切换距离=原始LOD切换距离 * LOD切换距离缩放系数
- 参数:
 value- LOD层级切换的距离缩放系数。
 
- 
getStyle
public GeoStyle3D getStyle()
返回OSGB缓存图层的风格。- 返回:
 - 图层风格。
 
 
- 
setStyle
public void setStyle(GeoStyle3D geoStyle3D)
设置OSGB缓存图层的风格。- 参数:
 geoStyle3D- 指定的图层风格。
 
- 
setOnlyObjectsVisible
public void setOnlyObjectsVisible(int[] ids, boolean value)设置指定OSGB模型ID队列的模型是否可见(手动设置)。- 参数:
 ids- 指定的模型ID队列。value- 可见性。
 
- 
setObjectsVisible
public void setObjectsVisible(int[] ids, boolean value)设置指定OSGB模型ID队列的模型是否可见,并与模型成互斥可见关系。- 参数:
 ids- 指定的模型ID队列。value- 可见性。
 
- 
setObjectsColor
public void setObjectsColor(int[] ids, Color value)设置指定OSGB模型ID队列的模型颜色。- 参数:
 ids- 指定的模型ID队列。value- 指定的颜色。
 
- 
getObjectsColor
public void getObjectsColor(int[] ids, Color[] colors)获取指定OSGB模型ID队列的颜色。- 参数:
 ids- 指定的模型ID队列。colors- 颜色数组。
 
- 
getObjectsColorCount
public int getObjectsColorCount()
返回设置颜色的对象个数。- 返回:
 - 设置颜色的对象个数。
 
 
- 
removeObjectsColor
public void removeObjectsColor(int[] ids)
移除指定ID队列模型的颜色。- 参数:
 ids- 待移除颜色的ID队列。
 
- 
clearObjectsColor
public void clearObjectsColor()
清除所有对象的颜色。 
- 
getFlattenRegionCount
public int getFlattenRegionCount()
返回当前场景的压平区域对象个数。- 返回:
 - 压平区域对象个数。
 
 
- 
addFlattenRegion
public int addFlattenRegion(Geometry geometry, java.lang.String tag)
添加压平区域来压平当前的osgb模型。- 参数:
 geometry- 待添加的压平区域。tag- 待添加压平区域的标签。- 返回:
 - 当前压平区域的索引号。
 
 
- 
clearFlattenRegion
public void clearFlattenRegion()
清除所有压平区域对象,恢复OSGB模型的初始状态。 
- 
getFlattenRegion
public Geometry getFlattenRegion(int index)
返回指定索引的压平区域对象。- 参数:
 index- 指定的索引号。- 返回:
 - 压平区域对象。
 
 
- 
getFlattenRegionTag
public java.lang.String getFlattenRegionTag(int index)
返回指定索引的压平区域对象的标签。- 参数:
 index- 指定的索引。- 返回:
 - 压平区域对象标签。
 
 
- 
indexOfFlattenRegion
public int indexOfFlattenRegion(java.lang.String tag)
通过标签获取压平区域的索引号。- 参数:
 tag- 指定的标签。- 返回:
 - 压平区域的索引号。
 
 
- 
removeFlattenRegion
public boolean removeFlattenRegion(int index)
移除指定索引的压平区域。- 参数:
 index- 待移除的压平对象索引。- 返回:
 - 移除是否成功。
 
 
- 
setFlattenRegionTag
public boolean setFlattenRegionTag(int index, java.lang.String tag)设置指定索引的压平区域对象的标签。- 参数:
 index- 要设置标签的几何对象的索引值。tag- 指定的标签。- 返回:
 - 设置是否成功。
 
 
- 
getFieldInfos
public FieldInfos getFieldInfos()
返回属性表信息。- 覆盖:
 getFieldInfos在类中Layer3D- 返回:
 - 字段信息集合。
 
 
- 
getFieldValueOfSelectedObject
public java.lang.Object getFieldValueOfSelectedObject(int index)
返回选中对象的属性数据表中指定ID字段的值。- 参数:
 index- 指定的字段ID。- 返回:
 - 属性值。
 
 
- 
setHypsometricSetting
public void setHypsometricSetting(HypsometricSetting HypsometricSetting)
设置图层分层设色对象。- 参数:
 HypsometricSetting- 指定的分层设色对象。
 
- 
getHypsometricSetting
public HypsometricSetting getHypsometricSetting()
获取图层分层设色对象。- 返回:
 - 分层设色对象。
 
 
- 
getAllFieldValueOfLastSelectedObject
public java.lang.Object[] getAllFieldValueOfLastSelectedObject()
获取最后一次选择的所有属性字段信息。- 返回:
 - 属性字段信息。
 
 
- 
getDatasetInfos
public java.util.ArrayList<java.lang.String> getDatasetInfos(java.util.ArrayList<java.lang.Integer> startid, java.util.ArrayList<java.lang.Integer> endid)获取多数据源属性信息接口- 参数:
 startid- 当前数据集的起始IDendid- 当前数据集的结束ID- 返回:
 - 当前数据集的名称
 
 
- 
setSelectedTranslate
public void setSelectedTranslate(double translateX, double translateY, double translateZ)设置选中对象的偏移位置- 参数:
 translateX-translateY-translateZ-
 
- 
removeAllObjsOffset
public void removeAllObjsOffset()
清除所有的对象偏移 
- 
setARModelScale
public void setARModelScale(double valuex, double valuey, double valuez)AR图层设置放缩- 参数:
 value-
 
- 
setARModelRotation
public void setARModelRotation(double rotX, double rotY, double rotZ)AR图层设置旋转- 参数:
 value-
 
- 
setTranslation
public void setTranslation(double rotX, double rotY, double rotZ)AR图层设置平移- 参数:
 value-
 
- 
setInitialized
public void setInitialized(boolean status)
设置图层是否初始化设置FALSE时会重新初始化图层
- 参数:
 status-
 
- 
setDistanceVisible
public void setDistanceVisible(double distance)
AR设置可见距离- 参数:
 distance-
 
 - 
 
 -